package com.qiaoba.api.file.core;

import com.qiaoba.api.file.entity.vo.FileUploadVO;

import java.io.InputStream;

/**
 * 文件服务核心类
 *
 * @author ailanyin
 * @date 2023-09-26 11:44:16
 * @see com.qiaoba.api.file.service.FileApiService (其他模块请使用这个FileApiService)
 */
public interface FileCore {

    /**
     * 上传文件
     *
     * @param bucketName  储存桶
     * @param filename    文件名
     * @param size        文件大小
     * @param inputStream 文件二进制流
     * @return fileName + url
     */
    FileUploadVO upload(String bucketName, String filename, Long size, InputStream inputStream);

    /**
     * 删除文件
     *
     * @param bucketName 储存桶
     * @param path       路径
     */
    void delete(String bucketName, String path);

}
